Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

274
Visualizações
El número de tipo de argumento no se puede asignar a la cadena de tipo de parámetro | undefined El número de tipo no se puede asignar a la cadena de tipo

Estoy un poco confundido con esta advertencia:

Argument type number is not assignable to parameter type string | undefined Type number is not assignable to type string

Tome la siguiente paz de código:

 function createCalculator() { let calculator = { sum() { return this.a + this.b; }, mul() { return this.a * this.b; }, read() { this.a = +prompt('a?', 0); this.b = +prompt('b?', 0); } }; calculator.read([1,3,6]); console.log( calculator.sum() ); console.log( calculator.mul() ); } let calculator; calculator = createCalculator();

También tengo una advertencia:

 Void function return value is used

quiero lo siguiente:

La función createCalculator() devuelve un objeto con tres métodos:

  • read(arr) acepta una tabla de números y la guarda en su objeto de campo.
  • sum() devuelve la suma de los valores de la tabla
  • mul() devuelve el producto de los valores de la tabla
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

La advertencia se debe a que su constructor de objetos no devuelve un objeto

He insertado una función de retorno que debería hacer desaparecer su advertencia.

 function createCalculator() { let calculator = { sum() { return this.a + this.b; }, mul() { return this.a * this.b; }, read() { this.a = +prompt('a?', 0); this.b = +prompt('b?', 0); } }; calculator.read(); // Don't bother to send in the [1,3,6] because you are not using it in the function. console.log(calculator.sum()); console.log(calculator.mul()); return calculator // Do this so that your final statement really has something to receive! } let calculator; calculator = createCalculator();

¿Quizás tenías la intención de escribir esto, sin embargo?

 function createCalculator() { return { sum() { return this.a + this.b; }, mul() { return this.a * this.b; }, read() { this.a = +prompt('a?', 0); this.b = +prompt('b?', 0); } }; } const calculator = createCalculator(); calculator.read(); console.log(calculator.sum()); console.log(calculator.mul());

Ahora veo que tenía la intención de leer una lista de valores, en lugar de ingresarlos "en vivo"

Entonces, ¿qué tal esto?

 function createCalculator() { return { memory: [], read(arr) { this.memory = arr }, sum() { return this.memory.reduce((x, y) => x + y, 0) }, mul() { return this.memory.reduce((x, y) => x * y, 1) }, }; } const calculator = createCalculator(); calculator.read([1, 3, 6]); console.log(calculator.sum()); console.log(calculator.mul());

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda